ডকুমেন্ট ডিলিট করা (deleteOne(), deleteMany())

Java Technologies - জাভা মঙ্গোডিবি (Java MongoDB) - MongoDB তে CRUD অপারেশন (Create, Read, Update, Delete)
114

MongoDB তে ডকুমেন্ট মুছে ফেলার জন্য deleteOne() এবং deleteMany() মেথড ব্যবহৃত হয়। deleteOne() একটী ডকুমেন্ট মুছে ফেলে, যখন deleteMany() একাধিক ডকুমেন্ট মুছে ফেলে, যেগুলি একটি নির্দিষ্ট শর্তের সাথে মেলে। এই অপারেশনগুলো MongoCollection ক্লাসের মেথড হিসেবে উপলব্ধ।

এখানে, MongoDB ডকুমেন্ট মুছতে Java MongoDB Driver ব্যবহার করার উদাহরণ দেওয়া হলো।


1. deleteOne() মেথড

deleteOne() মেথডটি একক ডকুমেন্ট মুছে ফেলে যেটি একটি নির্দিষ্ট ফিল্টারের সাথে মেলে।

deleteOne() উদাহরণ:

import com.mongodb.MongoClient;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.MongoCollection;
import org.bson.Document;

public class DeleteOneExample {
    public static void main(String[] args) {
        // MongoDB সার্ভারে সংযোগ স্থাপন করা
        MongoClient mongoClient = new MongoClient("localhost", 27017);

        // ডাটাবেস নির্বাচন করা
        MongoDatabase database = mongoClient.getDatabase("mydatabase");

        // কোলেকশন নির্বাচন করা
        MongoCollection<Document> collection = database.getCollection("users");

        // deleteOne() ব্যবহার করে একটি ডকুমেন্ট মুছে ফেলা
        collection.deleteOne(new Document("name", "John Doe"));

        System.out.println("Document deleted successfully!");

        // MongoClient বন্ধ করা
        mongoClient.close();
    }
}

ব্যাখ্যা:

  • collection.deleteOne(new Document("name", "John Doe")) এই লাইনে "name" এর মান "John Doe" এমন একটী ডকুমেন্ট মুছে ফেলা হচ্ছে। যদি একাধিক ডকুমেন্ট থাকে, তবে এটি প্রথম মিল পাওয়া ডকুমেন্টটি মুছে ফেলবে।

2. deleteMany() মেথড

deleteMany() মেথডটি একাধিক ডকুমেন্ট মুছে ফেলে, যেগুলি নির্দিষ্ট ফিল্টারের সাথে মেলে।

deleteMany() উদাহরণ:

import com.mongodb.MongoClient;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.MongoCollection;
import org.bson.Document;

public class DeleteManyExample {
    public static void main(String[] args) {
        // MongoDB সার্ভারে সংযোগ স্থাপন করা
        MongoClient mongoClient = new MongoClient("localhost", 27017);

        // ডাটাবেস নির্বাচন করা
        MongoDatabase database = mongoClient.getDatabase("mydatabase");

        // কোলেকশন নির্বাচন করা
        MongoCollection<Document> collection = database.getCollection("users");

        // deleteMany() ব্যবহার করে একাধিক ডকুমেন্ট মুছে ফেলা
        collection.deleteMany(new Document("age", new Document("$lt", 30))); // Age < 30

        System.out.println("Documents deleted successfully!");

        // MongoClient বন্ধ করা
        mongoClient.close();
    }
}

ব্যাখ্যা:

  • collection.deleteMany(new Document("age", new Document("$lt", 30))) এই লাইনে age এর মান ৩০ এর চেয়ে কম এমন সমস্ত ডকুমেন্ট মুছে ফেলা হচ্ছে।
  • এখানে $lt অপারেটর ব্যবহার করা হয়েছে, যা "less than" (ছোট) অর্থে কাজ করে। MongoDB তে বিভিন্ন ধরনের comparison operators ব্যবহার করে ডকুমেন্ট মুছে ফেলা যায়, যেমন $gt (greater than), $eq (equal), $ne (not equal) ইত্যাদি।

3. deleteOne() এবং deleteMany() এর মধ্যে পার্থক্য

বৈশিষ্ট্যdeleteOne()deleteMany()
কাজএকটি ডকুমেন্ট মুছে ফেলে যা নির্দিষ্ট ফিল্টারের সাথে মেলে।একাধিক ডকুমেন্ট মুছে ফেলে যা নির্দিষ্ট ফিল্টারের সাথে মেলে।
ডকুমেন্ট সংখ্যাএকটি ডকুমেন্ট মুছে ফেলা হয়।একাধিক ডকুমেন্ট মুছে ফেলা হয়।
ফিল্টারপ্রথম মেলানো ডকুমেন্ট মুছে ফেলা হয়।সব মেলানো ডকুমেন্ট মুছে ফেলা হয়।

4. MongoDB তে Delete Operation সম্পর্কিত কিছু গুরুত্বপূর্ণ نکات:

  1. Atomic Operations: MongoDB তে deleteOne() এবং deleteMany() অপারেশনগুলি atomic (একক থ্রেডে সম্পন্ন) হয়, অর্থাৎ একে একে একাধিক ডকুমেন্টের জন্য অপারেশন চলবে।
  2. Filters: ডকুমেন্ট মুছে ফেলার সময় সঠিক filter ব্যবহার করুন, যেন আপনি ঠিক সেই ডকুমেন্টগুলি মুছতে পারেন যা আপনি চান। অন্যথায় ভুল ডকুমেন্ট মুছে ফেলতে পারেন।
  3. Indexing: যদি আপনি খুব বড় collection তে deleteMany() অপারেশন চালান, তবে indexing এর সাহায্যে পারফরম্যান্স উন্নত করতে পারেন।
  4. Backup Consideration: MongoDB তে ডকুমেন্ট একবার মুছে ফেললে তা পুনরুদ্ধার করা সম্ভব নয়। তাই ডকুমেন্ট মুছে ফেলার আগে backup নেওয়া উচিত।
  5. deleteMany() এর Performance: বড় collection বা large number of documents মুছলে পারফরম্যান্স প্রভাবিত হতে পারে। MongoDB এ batch processing বা bulk operations ব্যবহার করে পারফরম্যান্স উন্নত করা যেতে পারে।

MongoDB তে ডকুমেন্ট মুছতে deleteOne() এবং deleteMany() মেথড ব্যবহার করা হয়, যা খুবই কার্যকরী। deleteOne() একটি ডকুমেন্ট মুছে ফেলে, যেখানে deleteMany() একাধিক ডকুমেন্ট মুছে ফেলে। MongoDB তে এই অপারেশনগুলো দ্রুত সম্পাদিত হয়, তবে filter সঠিকভাবে ব্যবহার করা উচিত যাতে সঠিক ডকুমেন্টগুলি মুছে ফেলা যায় এবং ভুল ডেটা মুছে ফেলার ঝুঁকি এড়ানো যায়।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...